1 Pre-requisitos e instalación de paquetes

Lista de paquetes espaciales en R https://cran.r-project.org/web/views/Spatial.html

Paquetes generales:

  • maptools: manipulación de datos geográficos
  • raster: Lectura, escritura, manipulación, análisis y modelamiento de datos espaciales en cuadrículas.
  • sp: clases y métodos de datos espaciales (Pebesma & Bivand, 2018).
  • rgdal: provee enlaces a la libreria geoespacial GDAL y acceso a las operaciones de proyección y transformación de la libreria PROJ4 (Bivand et al., 2017).
  • sf: combinación estandarizada de funciones en sp, rgeos y rgdal para la manipulación de datos espaciales vectorizados (Pebesma, 2017)

1.1 Organización y creación de proyectos en R

Guide to reproducible code (British Ecology Society)

  1. Crear un nuevo projecto en R
  2. Crear carpetas básicas (e.g., ./data, ./figs, ./functions, …)
└── my_awesome_project
    ├── src
    ├── output
    ├── data
    │   ├── raw
    │   └── processed
    ├── README.md
    ├── run_analyses.R 
    └── .gitignore

Fuente: https://www.r-bloggers.com/structuring-r-projects/

1.2 Ejercicio # 1:

  • Crear un projecto de R
  • Crear carpetas básicas para la práctica
  • Abrir el projecto
  • Crear un ‘R script’
  • Crear etiquetas como librerias y datos dentro del script (shortcut: Crtl+Shift+R)

2 Representación simple de datos espaciales

2.1 Tipos básicos de R

  • Números

1 or 2 or 4000 or 10e9...

  • Cadenas (or characters)

"Hola mundo"

  • Operadores lógicos

"TRUE" or "FALSE"

  • Vectores

c(1, 2) or c("uno", "dos")

  • Matrices
##      [,1] [,2]         
## [1,] "1"  "Bucaramanga"
## [2,] "2"  "Bogotá"
  • Data frames
##   Num      Nombre
## 1   1 Bucaramanga
## 2   2      Bogotá

3 Conceptos espaciales

3.1 Vectores

3.1.1 Puntos geográficos

## [1] "SpatialPointsDataFrame"
## attr(,"package")
## [1] "sp"
## class       : SpatialPointsDataFrame 
## features    : 4 
## extent      : -76.65, -73, 4.71, 7.13  (xmin, xmax, ymin, ymax)
## crs         : NA 
## variables   : 2
## names       : precip, nombre 
## min values  :    119, Bogotá 
## max values  :    852, Quibdo

3.2 Proyecciones

Forma en que los datos espaciales son “aplanados” en un espacio 2D

“Alineación incorrecta de dos objetos espaciales = diferentes proyecciones”

Fuente: National Ecological Observatory Network (NEON)

3.3 Sistema de coordenadas

Fuente: Maning Sambale

## class       : SpatialPointsDataFrame 
## features    : 4 
## extent      : -76.65, -73, 4.71, 7.13  (xmin, xmax, ymin, ymax)
## crs         : +proj=longlat +datum=WGS84 +ellps=WGS84 +towgs84=0,0,0 
## variables   : 2
## names       : precip, nombre 
## min values  :    119, Bogotá 
## max values  :    852, Quibdo

3.4 Extensión espacial

Coordenadas X y Y de las esquinas en el espacio geográfico

Fuente: National Ecological Observatory Network (NEON)

3.5 Polígonos

## Checking rgeos availability: TRUE
## class       : SpatialPolygonsDataFrame 
## features    : 246 
## extent      : -180, 180, -90, 83.57027  (xmin, xmax, ymin, ymax)
## crs         : +proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs +towgs84=0,0,0 
## variables   : 11
## names       : FIPS, ISO2, ISO3,  UN,           NAME,    AREA,    POP2005, REGION, SUBREGION,      LON,     LAT 
## min values  :     ,   AD,  ABW,   4, Aaland Islands,       0,          0,      0,         0, -178.131, -80.446 
## max values  :   ZI,   ZW,  ZWE, 894,       Zimbabwe, 1638094, 1312978855,    150,       155,  179.219,   78.83

3.5.1 Filtración o subset (e.g., Colombia)

3.7 Ejercicio

  • Convierte el data frame del ejercicio anterior en un SpatialPointsDataFrame
  • Grafíca los puntos con diferentes proyecciones geográficas sobre un mapa de polígonos

3.8 Rasters

  • Datos espaciales en cuadrículas (“gridded data”)
  • Las cuadrículas representan areas de la tierra como pixeles

Fuente: National Ecological Observatory Network (NEON)

3.8.1 Resolución espacial

Tamaño de cada cuadrícula (usualmente en metros)

Fuente: National Ecological Observatory Network (NEON)

3.8.2 Datos climáticos

Variables bioclimáticas de la base de datos de Worldclim (Hijmans et al., 2004) http://worldclim.org/bioclim

  • BIO1 = Annual Mean Temperature
  • BIO5 = Max Temperature of Warmest Month
  • BIO6 = Min Temperature of Coldest Month
  • BIO7 = Temperature Annual Range (BIO5-BIO6)
  • BIO8 = Mean Temperature of Wettest Quarter
  • BIO9 = Mean Temperature of Driest Quarter
  • BIO12 = Annual Precipitation
  • BIO16 = Precipitation of Wettest Quarter
  • BIO17 = Precipitation of Driest Quarter
  • BIO18 = Precipitation of Warmest Quarter
  • BIO19 = Precipitation of Coldest Quarter

http://worldclim.org/bioclim

## 
## Attaching package: 'raster'
## The following object is masked from 'package:dplyr':
## 
##     select
## The following object is masked from 'package:tidyr':
## 
##     extract
## class      : RasterLayer 
## dimensions : 900, 2160, 1944000  (nrow, ncol, ncell)
## resolution : 0.1666667, 0.1666667  (x, y)
## extent     : -180, 180, -60, 90  (xmin, xmax, ymin, ymax)
## crs        : +proj=longlat +datum=WGS84 +no_defs +ellps=WGS84 +towgs84=0,0,0 
## source     : /home/se1212/Git_repos/UIS_course/Intro_Analisis_Espacial/data/wc10/bio12.bil 
## names      : bio12 
## values     : 0, 9916  (min, max)

3.8.3 Extracción de información de rasters

## [1] 7399 1965  863 1204
##   precip      nombre precip_bioclim
## 1    852      Quibdo           7399
## 2    227    Medellín           1965
## 3    119      Bogotá            863
## 4    149 Bucaramanga           1204

3.8.4 Cambio de colores y “breaks”

## $breaks
## [1]  0  2  4  6  8 10
## 
## $counts
## [1]   4732  23187 210982 334984   8996
## 
## $density
## [1] 0.004059148 0.019889995 0.180982053 0.287351964 0.007716841
## 
## $mids
## [1] 1 3 5 7 9
## 
## $xname
## [1] "v"
## 
## $equidist
## [1] TRUE
## 
## attr(,"class")
## [1] "histogram"

3.8.5 Ejercicio

Usando otra capa climática de bioclim (e.g., temperatura anual media):

  • Crear un mapa de con la capa climática usando la extensión espacial de Colombia
  • Extraer la información climatica de cada una de las ciudades usando el objeto ciudades_geo
  • Crear nuevos puntos de corte en el raster climático
  • Crear un mapa con los nuevos puntos de corte junto con los puntos geográficos de las ciudades